package pt.nmfa.peste.client.services.devicemanagement;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;

import javax.ejb.Local;

import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.annotations.remoting.WebRemote;

import pt.nmfa.peste.client.bean.ActionParametersDO;
import pt.nmfa.peste.client.bean.DeviceActionsDO;
import pt.nmfa.peste.client.bean.DeviceDO;

import com.google.gwt.user.client.rpc.RemoteService;

@Local
public interface DeviceManagement extends RemoteService{
	
	@WebRemote
	public List<DeviceDO> getDevices();
	
	@WebRemote
	@Transactional
	public void createDevice(DeviceDO deviceDO);
	
	@WebRemote
	@Transactional
	public void updateDevice(DeviceDO deviceDO);
	
	@WebRemote
	@Transactional
	public void deleteDevice(int deviceID);
	
	@WebRemote
	@Transactional
	public DeviceDO getDevice(int deviceID);
	
	@WebRemote
	public List<DeviceActionsDO> getDeviceActionsList(int deviceID);
	
	@WebRemote
	@Transactional
	public void updateDeviceActions(DeviceActionsDO deviceActionsDO);
	
	@WebRemote
	@Transactional
	public void deleteDeviceActions(int deviceID);
	
	@WebRemote
	@Transactional
	public void createDeviceActions(DeviceActionsDO deviceDO);
	
	@WebRemote
	@Transactional
	public void importLircConfig(int deviceId,String file);
	
	@WebRemote
	@Transactional	
	public List<ActionParametersDO> getDeviceActionsParametersList(int deviceActionsID);
	
	
	
	

	
}
